객체 옵셔널체이닝
#
옵셔널 체이닝 ?.?.
앞의 평가대상이undefined
null
이면 평가를 멈추고undefined
를 반환- 연산자가 아님. 함수나 대괄호와 함께 동작하는 특별한 문법 구조체 (Syntax Construct)
- 존재하지 않아도 괜찮은 대상에만 사용해야 한다.
- 위 예시에서는 user 의 address 와 street 가 필수값이 아니기 때문에 옵셔널 체이닝을 사용하였다.
- 옵셔널 체이닝의 남용은 디버깅을 어렵게 할 수 있다
?.
앞의 변수는 꼭 선언되어 있어야 한다.- 단락 평가(short circuit)
?.
왼쪽의 평가대상에 값이 없으면 즉시 평가를 멈춘다.?.
오른쪽의 부가 동작은 더이상 일어나지 않음.
?.()
?.[]
#
- 옵셔널 체이닝은 함수나 대괄호와 함께 동작하는 특별한 문법 구조체 (Syntax Construct) 이다.